fix: use resizable image MIME types in Accept header for external image fetch#5599
Open
kyrisu wants to merge 1 commit intowebstudio-is:mainfrom
Open
Conversation
…ge fetch When pasting HTML with external image URLs (e.g. Unsplash with auto=format), the server fetched images with an Accept header including image/avif. Services performed content negotiation and served AVIF data, which Cloudflare Image Resizing cannot process as input, causing ERROR 9520. Add RESIZABLE_IMAGE_MIME_TYPES whitelist limited to Cloudflare-supported input formats (JPEG, PNG, GIF, WebP, SVG) and use it in the Accept header.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
When pasting HTML containing external image URLs (e.g. from Tailwind UI components), the server fetches those images with an
Acceptheader that includesimage/avif. Services like Unsplash that supportauto=formatperform content negotiation based on this header and serve AVIF data. Cloudflare Image Resizing cannot process AVIF as input, resulting in ERROR 9520: Original image has unsupported format.This PR adds a
RESIZABLE_IMAGE_MIME_TYPESwhitelist in the SDK containing only formats that Cloudflare Image Resizing supports as input (JPEG, PNG, GIF, WebP, SVG), and uses it in theAcceptheader when fetching external images during paste.Direct file uploads are unaffected — users can still upload AVIF files, which are stored as-is.
Reference: https://developers.cloudflare.com/images/transform-images/#supported-input-formats
Steps for reproduction
ERROR 9520: Original image has unsupported formatCode Review
Before requesting a review
Before merging
RESIZE_ORIGIN).envfile